package so.sao.code.service.service;

import java.util.List;

import so.sao.code.dto.request.CodeSeqment;
import so.sao.code.dto.request.ScanActiveRequest;
import so.sao.code.service.infrastructure.model.vo.RangeActivationVO;
import so.sao.code.service.infrastructure.model.vo.TagDetailVO;
import so.sao.code.service.infrastructure.model.vo.TagStatisticsVO;
import so.sao.sso.feign.dto.UserDTO;

/**
 * 标签码段激活配置信息
 *
 * @author cuijunhua
 */
public interface RangeActivationService {
	/*
	 * void bindTag(UserDTO user, RangeActivationRequest request) throws
	 * RestException;
	 * 
	 * void mulitBindTag(UserDTO user, RangeActivationRequest request) throws
	 * RestException;
	 */
	void undoBind(long id);

	void tagActiveTask();

	TagDetailVO detail(Long tagBatchId) throws Exception;

	TagStatisticsVO geTagStatistics(UserDTO user, long eseId);

	void pushSupplyChain(long batchId);

	RangeActivationVO doSegment(CodeSeqment codeSeqment);

	void doBind(CodeSeqment codeSeqment);

	void doActive(CodeSeqment codeSeqment);

	List<RangeActivationVO> findTagBatchSegmentInfo(long tagBatchId);

	RangeActivationVO findSegmentInfoByRangId(long rangId);

}